const bcryptjs = require('bcryptjs');
// 幂次
const saltRounds = 10;// 2^10

module.exports = {
    /**
     * 加密方式
     * @param {加密} password 
     * @returns 
     */
    bcryptjs_Hash(password) {
        return new Promise((resolve, reject) => {
            bcryptjs.hash(password, saltRounds, (err, cryped) => {
                if (err) {
                    // 加密失败
                    reject('bcryptjs加密失败', err);
                } else {
                    // 加密成功
                    resolve(cryped);
                }
            })
        })
    },
    /**
     * 校验密码
     * is_password:数据库里密码
     * password:用户传过来密码
     * 两者进行对比true密码正确，false密码错误
     */
    bacypter_Compare(is_password, password) {
        return new Promise((resolve, reject) => {
            bcryptjs.compare(password, is_password, function (err, result) {
                if (err) {
                    reject('密码错误')
                } else {
                    resolve(result)
                }
            })
        })
    }
}
